struct GSOutput
{
	float2 uv : TEXCOORD;
	float4 pos : SV_POSITION;
};

[maxvertexcount(4)]
void main(
	point float4 input[1] : SV_POSITION, 
	inout TriangleStream< GSOutput > output
)
{
	//for (uint i = 0; i < 4; i++)
	//{
	//	GSOutput element;
	//	element.pos = input[i];
	//	output.Append(element);
	//}

	GSOutput verts[4] = {
		{float2(1,1), float4( 1,-1,0,1)},
		{float2(0,1), float4(-1,-1,0,1)},
		{float2(1,0), float4( 1, 1,0,1)},
		{float2(0,0), float4(-1, 1,0,1)}
		//{float2(0,1), float4(-1,-1,0,1)},
		//{float2(1,1), float4( 1,-1,0,1)},
		//{float2(0,0), float4(-1, 1,0,1)},
		//{float2(1,0), float4( 1, 1,0,1)}
	};
	for(int i = 0; i < 4; i++)
		output.Append(verts[i]);
}